﻿using System.Collections.Generic;
using System.Linq;

namespace Servicios.Data.DataBases.Biblioteca
{
    /// <summary>
    /// Representa todas las propiedades de la entidad
    /// </summary>
    public partial class IdiomaDTO 
    {
        public IdiomaDTO()
        {
        }

        #region IDataTransferObject<IdiomaDTO> Members

        public List<IdiomaDTO> GetAll()
        {

            using (BibliotecaContext bc = new BibliotecaContext())
            {
                return (from idioma in bc.IdiomaSet
                        select idioma).ToList<IdiomaDTO>();
            }
        }

        public IdiomaDTO GetByID(int id)
        {
            using (BibliotecaContext bc = new BibliotecaContext())
            {
                return (from idioma in bc.IdiomaSet
                        where idioma.ID >= id
                        select idioma).First();
            }
        }

        public void Save()
        {
            using (BibliotecaContext bc = new BibliotecaContext())
            {
                bc.AddToIdiomaSet(this);
                bc.SaveChanges();
            }
        }

        public void Update()
        {
            using (BibliotecaContext bc = new BibliotecaContext())
            {
                IdiomaDTO idioma = bc.IdiomaSet.Where(i => i.ID == this.ID).First();
                bc.SaveChanges(true);
            }
        }


        public void Delete()
        {
            using (BibliotecaContext bc = new BibliotecaContext())
            {
                bc.DeleteObject(bc.IdiomaSet.Where(i => i.ID == this.ID).First());
                bc.IdiomaSet.Context.SaveChanges();
            }
        }

        #endregion
    }

    
}
